-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hey all,

With the help of Atsushi Enomoto, I've created an XML schema that
describes the format of the .prims file we keep in subversion.  Please
take a look and let me know if you have any recommendations.  I'll
plan on using this schema in a GtkGLAreaSharp example.

Cheers,

C.J.
<http://monkey.workarea.jp/lb/index.html>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFDWlVbS8rWWzCfqgRAkowAKCBIJXh6RGPAC7M9pf1sJPhWlj00wCgloqY
lAJ6hBIGy91xY4mNqCGKIHI=
=4P1K
-----END PGP SIGNATURE-----

<?xml version="1.0" encoding="utf-8" ?>

<xs:schema version="0.1"
           xmlns:xs="http://www.w3.org/2001/XMLSchema";
           >
<!--
           xmlns="http://karma.colliertech.org/~cjcollier/prims01.xsd";
-->

  <xs:annotation>
    <xs:documentation>
      First public revision of .prims schema
    </xs:documentation>
  </xs:annotation>

  <xs:element name="primitives">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="primitive" minOccurs="0" maxOccurs="unbounded" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="primitive">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="states" type="xs:complexType" />
        <xs:element name="properties" type="xs:complexType" />
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" />
      <xs:attribute name="description" type="xs:string" />
      <xs:attribute name="key" type="xs:string" />
      <xs:attribute name="version" type="xs:string" />
    </xs:complexType>
  </xs:element>

  <xs:element name="states">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="physics" type="xs:boolean" default="false" />
        <xs:element name="temporary" type="xs:boolean" default="false" />
        <xs:element name="phantom" type="xs:boolean" default="false" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="properties">
    <xs:complexType>
      <xs:sequence>
	<xs:element name="levelofdetail" minOccurs="1" maxOccurs="1" />
        <xs:element name="type" minOccurs="1" maxOccurs="1" />
        <xs:element name="position" minOccurs="1" maxOccurs="1" />
        <xs:element name="rotation" minOccurs="1" maxOccurs="1" />
        <xs:element name="size" minOccurs="1" maxOccurs="1" />
        <xs:element name="cut" minOccurs="1" maxOccurs="1" />
        <xs:element name="dimple" minOccurs="1" maxOccurs="1" />
        <xs:element name="advancedcut" minOccurs="1" maxOccurs="1" />
        <xs:element name="hollow" minOccurs="1" maxOccurs="1" />
        <xs:element name="twist" minOccurs="1" maxOccurs="1" />
        <xs:element name="topside" minOccurs="1" maxOccurs="1" />
        <xs:element name="holesize" minOccurs="1" maxOccurs="1" />
        <xs:element name="topshear" minOccurs="1" maxOccurs="1" />
        <xs:element name="taper" minOccurs="1" maxOccurs="1" />
        <xs:element name="revolutions" minOccurs="1" maxOccurs="1" />
        <xs:element name="radiusoffset" minOccurs="1" maxOccurs="1" />
        <xs:element name="skew" minOccurs="1" maxOccurs="1" />
        <xs:element name="material" minOccurs="1" maxOccurs="1" />
        <xs:element name="hollowshape" minOccurs="1" maxOccurs="1" />
        <xs:element name="textures" minOccurs="1" maxOccurs="1" />
        <xs:element name="scripts" minOccurs="1" maxOccurs="1" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  
  <xs:element name="levelofdetail">
    <xs:complexType>
      <xs:attribute name="val" type="xs:positiveInteger" />
    </xs:complexType>
  </xs:element>
  <xs:element name="type">
    <xs:complexType>
      <xs:attribute name="val" type="xs:positiveInteger" />
    </xs:complexType>
  </xs:element>
  <xs:element name="position">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
      <xs:attribute name="z" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="rotation">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
      <xs:attribute name="z" type="xs:double" />
      <xs:attribute name="s" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="size">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
      <xs:attribute name="z" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="cut">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="dimple">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="advancedcut">
    <xs:complexType>
      <xs:attribute name="x" type="xs:double" />
      <xs:attribute name="y" type="xs:double" />
    </xs:complexType>
  </xs:element>
  <xs:element name="hollow">
    <xs:complexType>
      <xs:attribute name="val" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="twist">
    <xs:complexType>
      <xs:attribute name="x" type="xs:decimal" />
      <xs:attribute name="y" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="topside">
    <xs:complexType>
      <xs:attribute name="x" type="xs:decimal" />
      <xs:attribute name="y" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="holesize">
    <xs:complexType>
      <xs:attribute name="x" type="xs:decimal" />
      <xs:attribute name="y" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="topshear">
    <xs:complexType>
      <xs:attribute name="x" type="xs:decimal" />
      <xs:attribute name="y" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="taper">
    <xs:complexType>
      <xs:attribute name="x" type="xs:decimal" />
      <xs:attribute name="y" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="revolutions">
    <xs:complexType>
      <xs:attribute name="val" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="radiusoffset">
    <xs:complexType>
      <xs:attribute name="val" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="skew">
    <xs:complexType>
      <xs:attribute name="val" type="xs:decimal" />
    </xs:complexType>
  </xs:element>
  <xs:element name="material">
    <xs:complexType>
      <xs:attribute name="val" type="xs:positiveInteger" />
    </xs:complexType>
  </xs:element>
  <xs:element name="hollowshape">
    <xs:complexType>
      <xs:attribute name="val" type="xs:positiveInteger" />
    </xs:complexType>
  </xs:element>
  <xs:element name="textures">
    <xs:complexType>
      <xs:attribute name="params" type="xs:string" />
    </xs:complexType>
  </xs:element>
  <xs:element name="scripts">
    <xs:complexType>
      <xs:attribute name="params" type="xs:string" />
    </xs:complexType>
  </xs:element>
</xs:schema>
_______________________________________________
libsecondlife-dev mailing list
libsecondlife-dev@gna.org
https://mail.gna.org/listinfo/libsecondlife-dev

Reply via email to