473,396 Members | 2,052 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

xml metadata

Hi

in relational databases we have in general such things as "tables",
"columns", "primary keys", "foreign keys".

Are there corresponding entities in the xml world? Xml is used to represent
data (as a database is), and I was wondering how such things can be managed
with xml.

I have been given the task to develop a component (a program) which can
represent metadata in a generic form for many different types of data
source. I am just having trouble seeing the abstraction which can represent
an xml file and a relational database, so any help/advice would be
appreciated.

Thanks,
Peter
Apr 18 '06 #1
3 1605
Peter Kirk wrote:
in relational databases we have in general such things as "tables",
"columns", "primary keys", "foreign keys".

Are there corresponding entities in the xml world?
Yes, there's a data model underlying XML. Or rather there wasn't
originally, but then someone reverse engineered a description of one
according to how XML worked. Try reading the "XML Infoset" note on the
W3C site.

This is better though than SGML, which still just exists at the parsed
document level and doesn't really go beyond that. One of the (many)
reasons I prefer RDF is that that was designed _around_ a data model,
then had some serialisations (including RDF/XML) described for it.

I have been given the task to develop a component (a program) which can
represent metadata in a generic form for many different types of data
source.


(IMHO) Don't use XML, use RDF. This isn't because "RDF is a metadata
protocol" (it isn't, although this is a regularly quoted
misunderstanding). The reason is that processing XML really requires a
pre-defined schema (similar to a data model) before you can work with
its data. In a world of generic metadata you rarely get this luxury.

If you have to work with XML metadata, you'll find yourself hammering
your metadata flat into some consistent model before you can work with
it. Look at the museums and libraries world for best practice of how to
do this well - Dublin Core, OAI, all the well-known projects are well
worth looking at. There's a lot of wheels out there, shame to go
re-inventing them.

Apr 18 '06 #2
Peter Kirk wrote:
in relational databases we have in general such things as "tables",
"columns", "primary keys", "foreign keys".

Are there corresponding entities in the xml world? Xml is used to
represent data (as a database is), and I was wondering how such things can
be managed with xml.

I have been given the task to develop a component (a program) which can
represent metadata in a generic form for many different types of data
source. I am just having trouble seeing the abstraction which can
represent an xml file and a relational database, so any help/advice would
be appreciated.


XML is used for describing tree structures. Relational databases can also be
used to describe tree structures (by using foreign keys), but they are not
limited to trees. E.g. in relational databases, you can have cyclic
references or entities with multiple "parents". Or a tuple referencing
another tuple, but you could not say that one is the "parent" of the other
one.
With XML by itself, you are limited to trees. Of course you could think of
mechanisms for cross-referencing an XML node from another node, but this
would then be part of a schema on top of XML.

So you cannot generally say things like "a column in a relational database
matches a node in XML" or so.
At most, you might say "a relational database matches an XML document".

On a more concrete level, you could however say things like: "A tuple in
this relation matches a certain kind of node (at a certain position) in an
XML document that conforms to a certain schema".

Best regards,

Felix
Apr 18 '06 #3
Peter Kirk wrote:
Hi

in relational databases we have in general such things as "tables",
"columns", "primary keys", "foreign keys".

Are there corresponding entities in the xml world?
Not directly. See the FAQ at http://xml.silmaril.ie/authors/databases/
Xml is used to represent
data (as a database is), and I was wondering how such things can be managed
with xml.
Databases classically record rectangular data in nice neat rows
and columns. XML was designed for arbitrary continuous text, which
is a different model. XML can of course also be used for rectangular
data very successfully, but that wasn't it's primary purpose, and it
has many other features which do not map at all easily to database
technology (and vice versa).
I have been given the task to develop a component (a program) which can
represent metadata in a generic form for many different types of data
source. I am just having trouble seeing the abstraction which can represent
an xml file and a relational database, so any help/advice would be
appreciated.


To enable a generic representation you will need to generate a data
model capable of describing all known metadata types; in effect a
taxonomy of metadata. Or use one of the existing mechanisms which
can be used for XML representations of ontologies (eg Topic Maps,
ISO 11179, etc).

///Peter
--
XML FAQ: http://xml.silmaril.ie/
Apr 19 '06 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Useko Netsumi | last post by:
Does anyone aware of any program/apps/scripts that has the ability to modify/add/create/delete metadata in any image type such as JPEG, GIF, PNG, etc. Question for the experts, is it wise to...
1
by: Brett Selleck | last post by:
I would like to start collecting Metadata on my XML schemas. I have searched the web for a method of automatically extracting Metadata from an XSD file and have come up empty handed. Basically what...
1
by: Santhu | last post by:
What is the difference between METADATA and MANIFEST and where do they get stored? Thank you
1
by: Jonathan Gibbs | last post by:
I'm very new to xml, and struggling a bit.. I want to use an .xsd file passed to a windows application to define a dataset's schema, and also (if possible) pass other metadata associated with...
2
by: Tomas Vera | last post by:
Hello All (This is being cross-posted to the C++ group), I've started receiving the subject message during a compile of a C++ based interface module used in my C# based WebApp. This module...
2
by: GoodDay | last post by:
MC++ application, I've got "LNK2022 error message... MyApp error LNK2022: metadata operation failed (8013118D) : Inconsistent method declarations in duplicated types(CMainFramel). (0x02000008). ...
1
by: Laurent Lequenne | last post by:
Hello There, I just converted a VS 2003 C++ Project into VS 2005. I already made some changes in my headers files, has I had compilations errors with enums declarations. Now everything compiles...
2
by: EP | last post by:
I'm looking for a method by which to access Windows files metadata and have not been able to find anything in the standard modules or via Google - what is the standard approach? Shamefully I...
5
by: Ivo | last post by:
Hi, I need help with creating .txt and .doc files form c#. I know how to create these files so that they contain the text I want, but besides that text, I also need to write metadata (hope that...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.