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

 


Help: OASIS Mailing Lists Help | MarkMail Help

xdi message

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


Subject: Alternate proposed schema doc


This doc needs revision to be in line with Drummond's latest schema. I 
think a melding of the two would be good, especially regarding a 
container for child resources representing attributes. More on that in 
a moment.

Bill Barnhill
Senior Consultant
Booz Allen Hamilton
--- Begin Message ---
Drummond,

My apologies. I had validated the schema, but had not tested the sample 
file. Here's a good version of the sample file.

Bill
<?xml version="1.0" encoding="UTF-8"?>
<resource xmlns="http://xdi.oasis-open.org"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://xdi.oasis-open.org
D:\2-XDI-TC\Metaschema\v4\draft-xdi-metaschema-v4.xsd">
	<!--
		This XDI document illustrates how XDI would model a typical file directory system on a hard drive.
		This Resource, the XDI document root, represents the root of the C hard drive.
	-->
	<addresses>
		<xri>Drive.C</xri>
	</addresses>

	<!--
		The following Data block represents the files stored in the root directory.
		Since we can make the distinction that all the data contained is XDI data,
		we use XDIdata instead od data
	-->
	<XDIdata>
		<resource>
			<!--
				This Resource represents the first file.
				It's address under the root Resource is "Drive.C/File.1
			-->
			<addresses>
				<xri>File.1</xri>
			</addresses>

			<XDIdata>
				<resource>
					<addresses>
						<xri>pointer to contents of File.1</xri>
					</addresses>
				</resource>
			</XDIdata>
		</resource>

		<resource>
			<addresses>
				<xri>File.2</xri>
			</addresses>

			<XDIdata>
				<resource>
					<addresses>
						<xri>pointer to contents of File.1</xri>
					</addresses>
				</resource>
			</XDIdata>

			<resource>
				<!--
					This Resource represents metadata about Drive.C/File.2. 
					Note that this metadata is infinitely extensible to any depth.
					The address of this entire Resource is "Drive.C/File.2*(+create.date)"
				-->
				<addresses>
					<xri>+create.date</xri>
				</addresses>
				
				<!-- 
					The address of the Data node below is "Drive.C/File.2*(+create.date)/"
				-->
				<data>2004-07-15T12:13:14Z</data>
			</resource>

			<resource>
				<addresses>
					<xri>+author</xri>
				</addresses>

				<XDIdata>
					<resource>
						<addresses>
							<xri>=mary.jones</xri>
						</addresses>
					</resource>
				</XDIdata>
			</resource>
		</resource>
		<!-- 
			This is the end of the Data block representing the files in the root directory.
		-->
	</XDIdata>

	<XDIattributes>
		<resource>
			<!--
				This Resource is the first subdirectory. It's address is "Drive.C*Subdir.1"
				It also has an attribute of registered. So we can navigate to attribute resource
				with *, data resource with /, how do we navigate to address resource? With xref?
				Brackets seem to make sense, as you'll need a second char, either * or /
				So to access registration date of primary address, if it's available, you would
				use XRI of "Drive.C*Subdir.1[(+primaryAddress)*(+shortcut)]". Is this possible?
			-->
			<addresses>
				<resource>
					<addresses>
						<xri>+primaryAddress</xri>
					</addresses>
					<data>Subdir.1</data>
					<XDIattributes>
						<resource>
							<addresses>
								<xri>+shortcut</xri>
							</addresses>
							<XDIdata>
								<resource>
									<addresses>
										<xri>Drive.D/Subdir.1</xri>
									</addresses>
								</resource>
							</XDIdata>
						</resource>
					</XDIattributes>
				</resource>
			</addresses>

			<!--
				To return a list of only the files in this directory, append a slash.
				For example, "Drive.C*Subdir.1/" would return the Data block below.
			-->
			<data>
				<resource>
					<addresses>
						<xri>File.3</xri>
					</addresses>

					<XDIattributes>
						<resource>
							<addresses>
								<xri>pointer to contents of File.3</xri>
							</addresses>
						</resource>
					</XDIattributes>
				</resource>

				<resource>
					<addresses>
						<xri>File.4</xri>
					</addresses>
					
					<XDIattributes>
						<resource>
							<addresses>
								<xri>pointer to contents of File.4</xri>
							</addresses>
						</resource>
					</XDIattributes>
				</resource>
			</data>

			<!--
				To return a list of the subdirectories in this directory, append a star.
				For example, "Drive.C*Subdir.1*" would return the two subsubdirs below.
			-->
			<XDIattributes>
				<resource>
					<addresses>
						<xri>Subsubdir.1</xri>
					</addresses>
				</resource>
				<resource>
					<addresses>
						<xri>Subsubdir.2</xri>
					</addresses>
				</resource>
			</XDIattributes>
		</resource>

		<resource>
			<addresses>
				<xri>Subdir.2</xri>
			</addresses>

			<XDIattributes>
				<resource>
					<addresses>
						<xri>Subsubdir.3</xri>
					</addresses>
					
					<data>
						<resource>
							<addresses>
								<xri>File.5</xri>
							</addresses>

							<XDIattributes>
								<resource>
									<addresses>
										<xri>pointer to contents of File.5</xri>
									</addresses>
								</resource>
							</XDIattributes>
						</resource>
					</data>
				</resource>
				
				<resource>
					<addresses>
						<xri>Subsubdir.4</xri>
					</addresses>
				</resource>
			</XDIattributes>
		</resource>
	</XDIattributes>
</resource>
--- End Message ---


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