<?xml version="1.0" encoding="utf-8"?>
<!--
IPTC - International Press Telecommunications Council
25 Southampton Buildings, London WC2A 1AL, United Kingdom
www.iptc.org

This document is published under the Creative Commons Attribution 4.0 license - see the full license agreement at http://creativecommons.org/licenses/by/4.0/. 
By obtaining, using and/or copying this document, you (the licensee) agree that you have read, understood, and will comply with the terms and conditions of the license.

-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://iptc.org/std/nar/2006-10-01/" xmlns:iptc-x="http://iptc.org/std/nar/schemaextensions/" targetNamespace="http://iptc.org/std/nar/2006-10-01/" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.36" xml:lang="en">
	<xs:include schemaLocation="NewsML-G2_2.36-spec-Framework-Power.xsd"/>
	<xs:annotation>
		<xs:documentation>NewsML-G2 2.36 Knowledge Item XML Schema, document version 1</xs:documentation>
		<xs:documentation>Approval of this XML Schema version: 2026-10-21</xs:documentation>
		<xs:documentation>Any changes applied to this version of the XML Schema can be found at http://dev.iptc.org/G2-Approved-Changes</xs:documentation>
		<xs:documentation>Date of creation of this XML Schema document revision: 2026-09-11</xs:documentation>
		<xs:documentation>Schema design created for the IPTC in 2008 by Jay Cousins, RivCom Ltd (jay.cousins@rivcom.com),  Ulf Wingstedt, CNet Svenska AB (ulf.wingstedt@cnet.se)</xs:documentation>
		<xs:documentation>Schema maintained for the IPTC by Brendan Quinn (IPTC) and Dave Compton (LSEG Data &amp; Analytics), version 2.6 to 2.27 by  Michael Steidl (IPTC), up to version 2.5 by Laurent Le Meur (AFP) </xs:documentation>
	</xs:annotation>
	<xs:element name="knowledgeItem">
		<xs:annotation>
			<xs:documentation>An Item used for collating a set of concept definitions to form the physical representation of a controlled vocabulary</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="AnyItemType">
					<xs:sequence>
						<xs:element name="contentMeta" type="ContentMetadataAcDType" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Content Metadata for a Knowledge Item</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element ref="partMeta" minOccurs="0" maxOccurs="unbounded"/>
						<xs:element ref="assert" minOccurs="0" maxOccurs="unbounded"/>
						<xs:element ref="inlineRef" minOccurs="0" maxOccurs="unbounded"/>
						<xs:choice minOccurs="0" maxOccurs="unbounded">
							<xs:element ref="derivedFrom"/>
							<xs:element ref="derivedFromValue"/>
						</xs:choice>
						<xs:element ref="conceptSet" minOccurs="0"/>
						<xs:element ref="schemeMeta" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:annotation>
		<xs:documentation>NewsML-G2 2.11: conceptSet was made a global declaration</xs:documentation>
	</xs:annotation>
	<xs:element name="conceptSet">
		<xs:annotation>
			<xs:documentation>An unordered set of concepts</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="concept" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>A set of properties defining a concept</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
			<xs:attributeGroup ref="commonPowerAttributes"/>
			<xs:anyAttribute namespace="##other" processContents="lax"/>
		</xs:complexType>
	</xs:element>
	<xs:annotation>
		<xs:documentation>NewsML-G2 2.17: schemeMeta added</xs:documentation>
	</xs:annotation>
	<xs:element name="schemeMeta">
		<xs:annotation>
			<xs:documentation>Metadata about a scheme conveyed by a Knowledge Item</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:choice minOccurs="0" maxOccurs="unbounded">
					<xs:element ref="sameAsScheme"/>
					<xs:element ref="name"/>
					<xs:element ref="definition"/>
					<xs:element ref="note"/>
					<xs:element ref="related"/>
					<xs:element name="schemeMetaExtProperty" type="Flex2ExtPropType">
						<xs:annotation>
							<xs:documentation>Extension Property; the semantics are defined by the concept referenced by the rel attribute. The semantics of the Extension Property must have the same scope as the parent property.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:choice>
				<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Extension point for provider-defined properties from other namespaces</xs:documentation>
					</xs:annotation>
				</xs:any>
			</xs:sequence>
			<xs:attributeGroup ref="commonPowerAttributes"/>
			<xs:attribute name="uri" type="IRIType" use="required">
				<xs:annotation>
					<xs:documentation>The URI which identifies the scheme</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="preferredalias" use="optional">
				<xs:annotation>
					<xs:documentation>The alias preferred by the schema authority</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attributeGroup ref="authorityAttributes"/>
			<xs:attribute name="concepttype" type="QCodeListType" use="optional">
				<xs:annotation>
					<xs:documentation>List of all concept types used within this Knowledge Item</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<!-- ====== schemecreated ====== (NewsML-G2 2.29 added)-->
			<xs:attribute name="schemecreated" type="DateOptTimeType" use="optional">
				<xs:annotation>
					<xs:documentation>The date (and, optionally, the time) when the scheme was created. This must not be later than the creation timestamp of any concepts in the scheme (identified by the schemeMeta @uri).</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<!-- ===== schememodified ====== (NewsML-G2 2.29 added)-->
			<xs:attribute name="schememodified" type="DateOptTimeType" use="optional">
				<xs:annotation>
					<xs:documentation>The date (and, optionally, the time) when the scheme was last modified. The initial value is the date (and, optionally, the time) of creation of the scheme (identified by the schemeMeta @uri).</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<!-- ====== schemeretired ====== (NewsML-G2 2.29 added)-->
			<xs:attribute name="schemeretired" type="DateOptTimeType" use="optional">
				<xs:annotation>
					<xs:documentation>The date (and, optionally, the time) after which the scheme should not be used anymore. If a scheme is marked as retired, then all concepts in that scheme (identified by the schemeMeta @uri) must also be retired.</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:anyAttribute namespace="##other" processContents="lax"/>
		</xs:complexType>
	</xs:element>
</xs:schema>
<!--IPTC Schema Generator, v 1.3-->
