Scott Hinkelman, IBM
IBM hereby grants you permission to copy
and display the MIME Constraint Mechanism specification, in any medium without
fee or royalty, provided that you include the following on all copies of the MIME
Constraint Mechanism specification, or portions thereof that you make:
1.
A link or URL to the specification at this location
2.
The copyright notice as shown in the MIME Constraint Mechanism specification.
EXCEPT FOR THE COPYRIGHT LICENSE GRANTED
ABOVE, IBM DOES NOT GRANT, EITHER EXPRESSLY OR IMPLIEDLY, A LICENSE TO ANY
INTELLECTUAL PROPERTY, INCLUDING PATENTS, THEY OWN OR CONTROL. IBM MAY HAVE
PATENTS, PATENT APPLICATIONS, TRADEMARKS, COPYRIGHTS, OR OTHER INTELLECTUAL
PROPERTY RIGHTS COVERING SUBJECT MATTER IN THIS DOCUMENT.
THE INFORMATION CONSTRAINT FRAMEWORK SPECIFICATION
IS PROVIDED "AS IS," AND IBM MAKES NO REPRESENTATIONS OR WARRANTIES,
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS
OF THE MIME CONSTRAINT MECHANISM SPECIFICATION ARE SUITABLE FOR ANY PURPOSE;
NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY
PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
IBM WILL NOT BE LIABLE FOR ANY DIRECT,
INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR
RELATING TO ANY USE OR DISTRIBUTION OF THIS SPECIFICATION.
MIME Constraint Mechanism specification
may change before final release and you are cautioned against relying on the
content of this specification.
The name and trademarks of IBM may NOT be
used in any manner, including advertising or publicity pertaining to the
specification or its contents without specific, written prior permission. Title
to copyright in the MIME Constraint Mechanism specification will at all times
remain with IBM.
No other rights are granted by
implication, estoppel or otherwise.
The
MIME Constraint Mechanism specification (sometimes referred to as “MCM”)
provides a MIME-specific concrete information constraint mechanism type
for the Business Information Conformance Statement specification.
MCM
enables the constraint type of information to be declared as a MIME type and to
become an information constraint within the information constraint
processing model of a Business Information Conformance Statement.
This specification is an initial
public draft release and is provided for review and evaluation only. IBM makes no
warrantees or representations regarding the specifications in any manner
whatsoever.
2.1 Double MIME Constraint In-line
3.1 complexType
MIMEInformationConstraintMechanismType
3.2 element
MIMEInformationConstraintMechanismType/MIMEType
3.3 Distinguished TypeName
for Instance Documents
Business information can be declared as adhering to specific constraint mechanisms.
Various constraint mechanisms are utilized in industry.
The Business Information Conformance Statement (BICS) specification [BICS] provides a formal XML vocabulary providing the
ability to declare statements of constraints for business information based in
an information constraint processing model. The BICS specification specifies a
top level Information Conformance Statement as an XML document
structure, several common possible constraint processing models, and an
abstract Information Constraint Mechanism Type. This specification
defines a concrete information constraint mechanism type to allow a MIME
type to exist within a Business Information Conformance Statement as a
constraint mechanism.
Refer to the Business Information Conformance Statement [BICS] specification for increased details.
The keywords [keywords] "MUST", "MUST NOT",
"REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be
interpreted as described in RFC2119 [RFC2119].
The XML namespace names [XMLNamespace] URIs [URIs] defined by this specification is as follows:
http://ibm.com/xml/namespaces/mimeinformationconstraint
In order to use the Business Information Conformance Statement within an
XML instance document, an importing W3C XML Schema must be defined that
provides a concrete subtype of the InformationConstraintMechanismType type from
the Business Information Conformance Statement namespace. Once a concrete
constraint mechanism is defined, an XML instance document is then based on the
BICS schema and makes use of the concrete subtype within a constraint
processing model.
This specification defines such a concrete subtype, and this section
shows fictitious examples of utilizing the subtype in BICS.
The InformationConformanceStatement
element is the single root element for instance documents.
The following BICS states that if the either of the two MIME constraints
are applied with no errors to the information under discussion, that the
information under discussion is considered conformant.
In this example, two MIME constraints exist in-line within the statement,
and are within an ‘any’ constraint processing model.
[1]
<?xml version="1.0" encoding="UTF-8"?>
[2]
<InformationConformanceStatement
xmlns="http://ibm.com/xml/namespaces/businessinformationconformancestatement"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:mime="http://ibm.com/xml/namespaces/mimeinformationconstraint"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/xml/namespaces/businessinformationconformancestatement
[3]
./businessinformationconformancestatement.xsd
http://ibm.com/xml/namespaces/mimeinformationconstraint
[4]
./mimemechanism.xsd">
[5] <InformationConstraintProcessingModel
modelType="any">
[6] <InformationConstraint
xsi:type="mime:MIMEInformationConstraintMechanismType">
[7] <Name>jpg image
constraint</Name>
[8]
<TypeName>MIME Constraint Mechanism</TypeName>
[9]
<Description>This constraint, a MIME type, indicates jpg
information.</Description>
[10]
<mime:MIMEType>image/jpg</mime:MIMEType>
[11]
</InformationConstraint>
[12]
<InformationConstraint
xsi:type="mime:MIMEInformationConstraintMechanismType">
[13]
<Name>gif image constraint</Name>
[14]
<TypeName>MIME Constraint Mechanism</TypeName>
[15] <mime:MIMEType>image/gif</mime:MIMEType>
[16] </InformationConstraint>
[17]
</InformationConstraintProcessingModel>
[18]
</InformationConformanceStatement>
Lines (002) to (004) define the top-level element,
namespaces, etc.
Lines (005) to (017) define the constraint processing
model of the statement. The attribute on line (005) defines the constraint
processing model as an ‘any’ model. In this example, there are two constraints.
Lines (006) to (011) define the first InformationConstraint
within the processing model. This constraint is of the concrete MIMEInformationConstraintMechanismType
type as indicated by the xsi:type attribute.
Line (007) provides a name of the constraint.
Line (008) provide a name of the constraint
mechanism.
Line (009) provides a description of the constraint.
Line (010) defines the constraint as a MIME .jpg
type.
Lines (012) to (016) define the second
InformationConstraint within the processing model. This constraint is of the
concrete MIMEInformationConstraintMechanismType type as indicated by the
xsi:type attribute.
Line (013) provides a name of the constraint.
Line (014) provide a name of the constraint
mechanism.
Line (015) defines the constraint as a MIME .jpg
type.
This section defines the normative MIME Constraint Mechanism vocabulary
semantics as defined using W3C XML Schema representation.
Elements
typed as MIMEInformationConstraintMechanismType type provide a
MIME-specific concrete subtype of the InformationConstraintmechanismType from
the BICS namespace.
This type defines a required
extension element for specifying the MIME type.
<xs:complexType
name="MIMEInformationConstraintMechanismType">
<xs:complexContent>
<xs:extension base="bics:InformationConstraintMechanismType">
<xs:sequence>
<xs:element name="MIMEType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="(text|image|application|audio|video|model|x-.+)/+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
The local
MIMEType element of the MIMEInformationConstraintMechanismType type define an
information constraint specifed as a MIME [RFC2045] [RFC2046] type.
<xs:element name="MIMEType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="(text|image|application|audio|video|model|x-.+)/+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Instance documents utilizing the MIMEInformationConstraintMechanismType must specify the a value of “MIME XML Schema Constraint Mechanism” for the <TypeName> element in the http://ibm.com/xml/namespaces/businessinformationconformancestatement namespace name.
[keywords]
S. Bradner, "Key words for use in RFCs to Indicate Requirement
Levels," RFC 2119,
T. Berners-Lee, R. Fielding, L. Masinter, "Uniform Resource
Identifiers (URI): Generic Syntax," RFC 2396, MIT/LCS, U.C. Irvine, Xerox
Corporation, August 1998, http://www.ietf.org/rfc/rfc2396.txt
Business Information Conformance Statements version 2.0, ?
W3C Recommendation, Namespaces
in XML, http://www.w3.org/TR/1999/REC-xml-names-19990114
Extensible Markup Language (XML) 1.0 (Second
Edition), http://www.w3.org/TR/REC-xml
W3C Recommendation, XML Schema
Part 1: Structures, http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/
W3C Recommendation, XML Schema Part 2: Datatypes, http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/
A Multipurpose Internet Mail Extensions (MIME) Part One, Format
of Internet Message Bodies, http://www.ietf.org/rfc/rfc2045.txt?number=2045
A Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types, http://www.ietf.org/rfc/rfc2046.txt?number=2046
<?xml version="1.0"
encoding="UTF-8"?>
<!--
===================================================================
MIME Information Constraint Mechanism W3C
XML Schema
Version 1.0
Copyright Notice
© 2005 International Business Machines
Corporation, All rights reserved. The presentation, distribution, or other
dissemination of the information contained in this specification is not a
license, either expressly or impliedly, to any intellectual property owned or
controlled by IBM. IBM may have patents, patent applications, trademarks,
copyrights, or other intellectual property rights covering subject matter in
this document. The furnishing of this document does not give you any license to
IBM’s™ patents, trademarks, copyrights, or other intellectual property. The
example companies, organizations, products, domain names, e-mail addresses,
logos, people, places, and events depicted herein are fictitious. No
association with any real company, organization, product, domain name, e-mail
address, logo, person, place, or event is intended or should be inferred. This
specification and the information contained herein is provided on an "AS
IS" basis and to the maximum extent permitted by applicable law, IBM
provides the document AS IS AND WITH ALL FAULTS, and hereby disclaim all other
warranties and conditions, either express, implied, or statutory, including,
but not limited to, any (if any) implied warranties, duties, or conditions of
merchantability, of fitness for a particular purpose, of accuracy or
completeness of responses, of results, of workmanlike effort, of lack of
viruses, and of lack of negligence, all with regard to the document. ALSO,
THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION,
CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT OF ANY INTELLECTUAL PROPERTY
RIGHTS WITH REGARD TO THE DOCUMENT. IN NO EVENT WILL IBM BE LIABLE TO ANY OTHER
PARTY FOR THE COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOST PROFITS, LOSS
OF USE, LOSS OF DATA, OR ANY INCIDENTAL, CONSEQUENTIAL, DIRECT, INDIRECT, OR
SPECIAL DAMAGES WHETHER UNDER CONTRACT, TORT, WARRANTY, OR OTHERWISE, ARISING
IN ANY WAY OUT OF THIS OR ANY OTHER AGREEMENT RELATING TO THIS DOCUMENT,
WHETHER OR NOT SUCH PARTY HAD ADVANCE NOTICE OF THE POSSIBILITY OF SUCH
DAMAGES.
====================================================================
-->
<xs:schema
targetNamespace="http://ibm.com/xml/namespaces/mimeinformationconstraint"
elementFormDefault="qualified" attributeFormDefault="unqualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:mic="http://ibm.com/xml/namespaces/mimeinformationconstraint"
xmlns:bics="http://ibm.com/xml/namespaces/businessinformationconformancestatement">
<xs:import namespace="http://ibm.com/xml/namespaces/businessinformationconformancestatement"
schemaLocation="./businessinformationconformancestatement.xsd"/>
<xs:complexType
name="MIMEInformationConstraintMechanismType">
<xs:complexContent>
<xs:extension base="bics:InformationConstraintMechanismType">
<xs:sequence>
<xs:element name="MIMEType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="(text|image|application|audio|video|model|x-.+)/+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
.