OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

regrep message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Issue: Need XSLT to convert instance docs from 2.1 to 2.5


This is another critical path task that is required for getting our 2.5 
spec published.

We need an XSLT style sheet that can convert Requests in V2.1 format to 
V2.5 format. Note that once the XSLT is done I will need to use it to 
fix the specs and samples etc. before the 2.5 specs can be published.

I have asked Mike Kass our resident guru on XSLT for help and am 
awaiting his response.

The main change is that in 2.1 rim:LeafRegistryObjectList was defined as:

    <complexType name = "LeafRegistryObjectListType">
        <choice minOccurs = "0" maxOccurs = "unbounded">
            <element ref = "tns:ObjectRef"/>
            <element ref = "tns:Association"/>
            <element ref = "tns:AuditableEvent"/>
            <element ref = "tns:Classification"/>
            <element ref = "tns:ClassificationNode"/>
            <element ref = "tns:ClassificationScheme"/>
            <element ref = "tns:ExternalIdentifier"/>
            <element ref = "tns:ExternalLink"/>
            <element ref = "tns:ExtrinsicObject"/>
            <element ref = "tns:Organization"/>
            <element ref = "tns:RegistryPackage"/>
            <element ref = "tns:Service"/>
            <element ref = "tns:ServiceBinding"/>
            <element ref = "tns:SpecificationLink"/>
            <element ref = "tns:User"/>
        </choice>
    </complexType>
    <element name = "LeafRegistryObjectList" type =
"tns:LeafRegistryObjectListType"/>


And in V3 we removed the choice so the new schema was:

    <complexType name = "RegistryObjectListType">
      <sequence>
        <element name="RegistryObject" type="tns:RegistryObjectType"
minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:ObjectRef" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
    <element name = "RegistryObjectList" type =
"tns:RegistryObjectListType"/>

As a result old syntax like this:
<?xml version="1.0" encoding="UTF-8"?>
<!--$Header:
/cvsroot/ebxmlrr/ebxmlrr/misc/samples/SubmitObjectsRequest_AssociationTypeScheme.xml,v 

1.8 2003/04/04 11:40:29 farrukh_najmi Exp $-->
<rs:SubmitObjectsRequest
xmlns="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1
http://www.oasis-open.org/committees/regrep/documents/2.1/schema/rim.xsd
urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.1
http://www.oasis-open.org/committees/regrep/documents/2.1/schema/rs.xsd"
xmlns:rim="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1"
xmlns:rs="urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.1">
    <LeafRegistryObjectList>
        <ClassificationScheme
id="urn:uuid:6902675f-2f18-44b8-888b-c91db8b96b4d" isInternal="true"
nodeType="UniqueCode" xmlns="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1">
            <ClassificationNode
id="urn:uuid:44bc7776-a7d1-4fb5-88d5-c636c4c4dc09" code="AffiliatedWith">
        <ClassificationNode
id="urn:uuid:dec2c00e-0114-436d-a836-fab45afddc3f" code="EmployeeOf"/>
    </LeafRegistryObjectList>
</rs:SubmitObjectsRequest>


Needs to be converted to look like this:

<?xml version="1.0" encoding="UTF-8"?>
<!--$Header:
/cvsroot/ebxmlrr/ebxmlrr/misc/samples/SubmitObjectsRequest_AssociationTypeScheme.xml,v 

1.8 2003/04/04 11:40:29 farrukh_najmi Exp $-->
<rs:SubmitObjectsRequest
xmlns="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.5"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.5
http://www.oasis-open.org/committees/regrep/documents/2.5/schema/rim.xsd
urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.5
http://www.oasis-open.org/committees/regrep/documents/2.5/schema/rs.xsd"
xmlns:rim="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.5"
xmlns:rs="urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.5">
    <RegistryObjectList>
        <RegistryObject xsd:type="rim:ClassificationScheme"
id="urn:uuid:6902675f-2f18-44b8-888b-c91db8b96b4d" isInternal="true"
nodeType="UniqueCode" xmlns="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1">
            <ClassificationNode
id="urn:uuid:44bc7776-a7d1-4fb5-88d5-c636c4c4dc09" code="AffiliatedWith">
        <RegistryObject xsd:type="rim:ClassificationNode"
id="urn:uuid:dec2c00e-0114-436d-a836-fab45afddc3f" code="EmployeeOf"/>
    </RegistryObjectList>
</rs:SubmitObjectsRequest>

The XSLT needs to:

-Convert 2.1 namespaces to 2.5 name spaces

-Convert LeafRegistryObjectList tags to RegistryObjectList tags

-Convert open and close tags for RegistryObject sub-types to be
RegistryObject with xsd:type = the qualified name for the original tag.


If Mike or anyone else can step up to this task it would be a big help.
Thanks very much for your help in advance.

-- 
Farrukh





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]