For the MODS schema there were several originally locally-defined elements that people wanted to reference in other schemas. We easily globalized those in MODS, and I don't see any reason not to do so for PREMIS.
 
For example, changing:
 
      <xs:element name="eventType" type="xs:string"/>
 
to
      <xs:element name="eventType" type="eventTypeType"/>
 
and adding:
    <xs:simpleType name="eventTypeType">
    <xs:restriction base="xs:string"/>
    </xs:simpleType>
 
is a transparent change (it doesn't affect any instances).  It doesn't help schema readability, and so I wouldn't suggest doing this for all local elements, only those specifically requested.  
 
For MODS we've been making changes like these for minor version changes. I would suggest for PREMIS version 1.1 globalizing  any such elements specifically requested, such as eventType, and after 1.1 is frozen, if someone requests globalization of an element, put it in the queue for the next revision, and if it is an urgent request, define a new minor revision.
 
--Ray
 
----- Original Message -----
From: "Richard Davis" <[log in to unmask]>
To: <[log in to unmask]>
Sent: Friday, September 16, 2005 7:45 AM
Subject: [PIG] Schema style (or, Extent and Extensibility)

> Hi all
>
> Here's a slightly more meaty style issue for your consideration:
>
> I would like to extend the PREMIS schema in at least one simple way: I
> want to restrict the content for event.eventType to a handful of locally
> meaningful values. Ideally that would also involve further refining the
> element into something like eventSuperType and eventSubType, which suits
> my needs, though it needn't trouble the global PREMIS schema.
>
> I'd like to be able to define these (and other) extensions as local
> refinements of PREMIS.xsd. I'd therefore expect to be able to create a
> local schema that simply includes/imports all the definitions of
> PREMIS.xsd, and then specifies a few redefinitions.
>
> XML Schema offers a way to do this with <xs:redefine>. However, as far
> as I can see, <xs:redefine> only works for type definitions, not element
> definitions. Since all the PREMIS schema documents use a "Russian doll"
> style, defining each element locally, rather than defining global types
> separately and referencing them, it doesn't look like I'm going to be
> able to do this.
>
> Is this something that might be remedied soonish? If not, has anyone any
> ideas on how else I might achieve my aims, without having to manage a
> complete local rewrite of PREMIS.xsd - or convert to Relax NG!?
>
> Richard
>
> PS. FYI, Ch 13 of Eric van der Vlist's XML Schema book (O'Reilly) has a
> clear description of schema style alternatives, and their consequences
> for extensibility.
>
>
> --
> /
> \ Richard M Davis
> / Digital Archives Specialist
> \ University of London Computer Centre
> / Tel: +44 (0) 20 7692 1350
> \ mailto:
[log in to unmask]
> /