예제 #1
0
class Branching(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Type = T.ValueSetString(required=True)
    TargetTransition = T.ODMListObject(element_class=TargetTransition,
                                       required=True)
    DefaultTransition = T.ODMListObject(element_class=DefaultTransition)
예제 #2
0
class ItemGroupDef(OE.ODMElement):
    """ represents ODM v2.0 ItemGroupDef and can serialize as JSON or XML"""
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Repeating = T.ValueSetString(required=True)
    Type = T.ValueSetString()
    IsReferenceData = T.ValueSetString(required=False)
    DatasetName = T.Name()
    Domain = T.String()
    Purpose = T.String()
    CommentOID = T.OIDRef()
    Description = T.ODMObject(element_class=Description)
    ItemGroupRef = T.ODMListObject(element_class=ItemGroupRef)
    ItemRef = T.ODMListObject(element_class=ItemRef)
    WorkflowRef = T.ODMListObject(element_class=WorkflowRef)
    Origin = T.ODMListObject(element_class=Origin)
    Alias = T.ODMListObject(element_class=Alias)

    def __len__(self):
        return len(self.ItemRef)

    def __getitem__(self, position):
        return self.ItemRef[position]

    def __iter__(self):
        return iter(self.ItemRef)
예제 #3
0
class Transition(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    SourceOID = T.OIDRef(required=True)
    TargetOID = T.OIDRef(required=True)
    StartConditionOID = T.OIDRef()
    EndConditionOID = T.OIDRef()
예제 #4
0
class MethodDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Type = T.ValueSetString(required=True)
    Description = T.ODMObject(required=True, element_class=Description)
    FormalExpression = T.ODMListObject(element_class=FormalExpression)
    Alias = T.ODMListObject(element_class=Alias)
예제 #5
0
class WorkflowDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Description = T.ODMObject(element_class=Description)
    WorkflowStart = T.ODMObject(element_class=WorkflowStart, required=True)
    Transition = T.ODMListObject(element_class=Transition)
    Branching = T.ODMListObject(element_class=Branching)
    WorkflowEnd = T.ODMListObject(element_class=WorkflowEnd, required=True)
예제 #6
0
class ExceptionEvent(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    ConditionOID = T.OIDRef(required=True)
    Description = T.ODMObject(element_class=Description)
    WorkflowRef = T.ODMObject(element_class=WorkflowRef)
    StudyEventGroupRef = T.ODMListObject(element_class=StudyEventGroupRef)
    StudyEventRef = T.ODMListObject(element_class=StudyEventRef)
예제 #7
0
class DurationTimingConstraint(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    StructuralElementOID = T.OIDRef(required=True)
    DurationTarget = T.DurationDateTimeString(required=True)
    DurationPreWindow = T.DurationDateTimeString(required=True)
    DurationPostWindow = T.DurationDateTimeString(required=True)
    Description = T.ODMObject(element_class=Description)
예제 #8
0
class MethodDef(OE.ODMElement):
    """ represents ODM v2.0 MethodDef and can serialize as JSON or XML """
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Type = T.ValueSetString(required=True)
    Description = T.ODMObject(required=True, element_class=Description)
    MethodSignature = T.ODMObject(element_class=MethodSignature)
    FormalExpression = T.ODMListObject(element_class=FormalExpression)
    Alias = T.ODMListObject(element_class=Alias)
예제 #9
0
class AbsoluteTimingConstraint(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    StudyEventGroupOID = T.OIDRef()
    StudyEventOID = T.OIDRef()
    TimepointTarget = T.IncompleteDateTimeString(required=True)
    TimepointPreWindow = T.DurationDateTimeString(required=True)
    TimepointPostWindow = T.DurationDateTimeString(required=True)
    Description = T.ODMObject(element_class=Description)
예제 #10
0
파일: model.py 프로젝트: swhume/odmlib
class Standard(OE.ODMElement):
    namespace = "def"
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Type = T.String(required=True)
    PublishingSet = T.String()
    Version = T.String(required=True)
    Status = T.String()
    CommentOID = T.OIDRef(namespace="def")
예제 #11
0
class TransitionTimingConstraint(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    TransitionOID = T.OIDRef(required=True)
    TimepointRelativeTarget = T.DurationDateTimeString(required=True)
    MethodOID = T.OIDRef()
    TimepointPreWindow = T.DurationDateTimeString(required=True)
    TimepointPostWindow = T.DurationDateTimeString(required=True)
    Description = T.ODMObject(element_class=Description)
예제 #12
0
class CodeList(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    DataType = T.ValueSetString(required=True)
    SASFormatName = T.SASFormat()
    Description = T.ODMObject(element_class=Description)
    CodeListItem = T.ODMListObject(element_class=CodeListItem)
    EnumeratedItem = T.ODMListObject(element_class=EnumeratedItem)
    ExternalCodeList = T.ODMObject(element_class=ExternalCodeList)
    Alias = T.ODMListObject(element_class=Alias)
예제 #13
0
class CodeList(OE.ODMElement):
    """ represents ODM v1.3.2 CodeList element that can serialize as JSON or XML """
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    DataType = T.ValueSetString(required=True)
    SASFormatName = T.SASFormat()
    Description = T.ODMObject(element_class=Description)
    CodeListItem = T.ODMListObject(element_class=CodeListItem)
    EnumeratedItem = T.ODMListObject(element_class=EnumeratedItem)
    ExternalCodeList = T.ODMObject(element_class=ExternalCodeList)
    Alias = T.ODMListObject(element_class=Alias)
예제 #14
0
class StudyTiming(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    AbsoluteTimingConstraint = T.ODMListObject(
        element_class=AbsoluteTimingConstraint)
    RelativeTimingConstraint = T.ODMListObject(
        element_class=RelativeTimingConstraint)
    TransitionTimingConstraint = T.ODMObject(
        element_class=TransitionTimingConstraint)
    DurationTimingConstraint = T.ODMListObject(
        element_class=DurationTimingConstraint)
예제 #15
0
class RelativeTimingConstraint(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    PredecessorStudyEventGroupOID = T.OIDRef()
    PredecessorStudyEventOID = T.OIDRef()
    SuccessorStudyEventGroupOID = T.OIDRef()
    SuccessorStudyEventOID = T.OIDRef()
    Type = T.ValueSetString()
    TimepointRelativeTarget = T.DurationDateTimeString(required=True)
    TimepointPreWindow = T.DurationDateTimeString(required=True)
    TimepointPostWindow = T.DurationDateTimeString(required=True)
    Description = T.ODMObject(element_class=Description)
예제 #16
0
class ValueListDef(OE.ODMElement):
    namespace = "def"
    OID = T.OID(required=True)
    ItemRef = T.ODMListObject(element_class=ItemRef, required=True)

    def __len__(self):
        return len(self.ItemRef)

    def __getitem__(self, position):
        return self.ItemRef[position]

    def __iter__(self):
        return iter(self.ItemRef)
예제 #17
0
파일: model.py 프로젝트: swhume/odmlib
class ODM(OE.ODMElement):
    Description = T.String(required=False)
    FileType = T.ValueSetString(required=True)
    Granularity = T.ValueSetString(required=False)
    FileOID = T.OID(required=True)
    CreationDateTime = T.DateTimeString(required=True)
    AsOfDateTime = T.DateTimeString(required=False)
    ODMVersion = T.ValueSetString(required=False)
    Originator = T.String(required=False)
    SourceSystem = T.String(required=False)
    SourceSystemVersion = T.String(required=False)
    schemaLocation = T.String(required=False, namespace="xs")
    Study = T.ODMListObject(element_class=Study)
예제 #18
0
class ArchiveLayout(OE.ODMElement):
    OID = T.OID(required=True)
    PdfFileName = T.FileName(required=True)
    PresentationOID = T.OIDRef(required=False)

    def __len__(self):
        return len(self.ItemGroupRef)

    def __getitem__(self, position):
        return self.ItemGroupRef[position]

    def __iter__(self):
        return iter(self.ItemGroupRef)
예제 #19
0
class MetaDataVersion(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Description = T.String(required=False)
    Include = T.ODMObject(element_class=Include)
    Protocol = T.ODMObject(element_class=Protocol)
    StudyEventDef = T.ODMListObject(element_class=StudyEventDef)
    FormDef = T.ODMListObject(element_class=FormDef)
    ItemGroupDef = T.ODMListObject(element_class=ItemGroupDef)
    ItemDef = T.ODMListObject(element_class=ItemDef)
    CodeList = T.ODMListObject(element_class=CodeList)
    Presentation = T.ODMListObject(element_class=Presentation)
    ConditionDef = T.ODMListObject(element_class=ConditionDef)
    MethodDef = T.ODMListObject(element_class=MethodDef)
예제 #20
0
파일: model.py 프로젝트: swhume/odmlib
class ODM(OE.ODMElement):
    Description = T.String(required=False)
    FileType = T.ValueSetString(required=True)
    FileOID = T.OID(required=True)
    CreationDateTime = T.DateTimeString(required=True)
    PriorFileOID = T.OIDRef(required=False)
    AsOfDateTime = T.DateTimeString(required=False)
    ODMVersion = T.ValueSetString(required=False)
    DatasetXMLVersion = T.ExtendedValidValues(required=True, valid_values=["1.0.0", "1.0.1"])
    Originator = T.String(required=False)
    SourceSystem = T.String(required=False)
    SourceSystemVersion = T.String(required=False)
    schemaLocation = T.String(required=False, namespace="xs")
    ReferenceData = T.ODMListObject(element_class=ReferenceData)
    ClinicalData = T.ODMObject(element_class=ClinicalData)
예제 #21
0
class User(OE.ODMElement):
    OID = T.OID(required=True)
    UserType = T.ValueSetString()
    LoginName = T.ODMObject(element_class=LoginName)
    DisplayName = T.ODMObject(element_class=DisplayName)
    FullName = T.ODMObject(element_class=FullName)
    FirstName = T.ODMObject(element_class=FirstName)
    LastName = T.ODMObject(element_class=LastName)
    Organization = T.ODMObject(element_class=Organization)
    Address = T.ODMListObject(element_class=Address)
    Email = T.ODMListObject(element_class=Email)
    Pager = T.ODMObject(element_class=Pager)
    Fax = T.ODMListObject(element_class=Fax)
    Phone = T.ODMListObject(element_class=Phone)
    LocationRef = T.ODMListObject(element_class=LocationRef)
    Certificate = T.ODMListObject(element_class=Certificate)
예제 #22
0
class MetaDataVersion(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Description = T.ODMObject(element_class=Description)
    Include = T.ODMObject(element_class=Include)
    Protocol = T.ODMObject(element_class=Protocol)
    StudyStructure = T.ODMObject(element_class=StudyStructure)
    WorkflowDef = T.ODMListObject(element_class=WorkflowDef)
    StudyTiming = T.ODMObject(element_class=StudyTiming)
    StudyEventGroupDef = T.ODMListObject(element_class=StudyEventGroupDef)
    StudyEventDef = T.ODMListObject(element_class=StudyEventDef)
    ItemGroupDef = T.ODMListObject(element_class=ItemGroupDef)
    ItemDef = T.ODMListObject(element_class=ItemDef)
    CodeList = T.ODMListObject(element_class=CodeList)
    ConditionDef = T.ODMListObject(element_class=ConditionDef)
    MethodDef = T.ODMListObject(element_class=MethodDef)
예제 #23
0
class ItemDef(OE.ODMElement):
    """ represents ODM v2.0 ItemDef and can serialize as JSON or XML - ordering of properties matters """
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    DataType = T.ValueSetString(required=True)
    Length = T.PositiveInteger()
    FractionDigits = T.NonNegativeInteger()
    DatasetVarName = T.Name()
    SDSVarName = T.SASName()
    CommentOID = T.String()
    Description = T.ODMObject(element_class=Description)
    Question = T.ODMObject(element_class=Question)
    ExternalQuestion = T.ODMObject(element_class=ExternalQuestion)
    MeasurementUnitRef = T.ODMListObject(element_class=MeasurementUnitRef)
    RangeCheck = T.ODMListObject(element_class=RangeCheck)
    CodeListRef = T.ODMObject(element_class=CodeListRef)
    Alias = T.ODMListObject(element_class=Alias)
예제 #24
0
class ItemDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    DataType = T.ValueSetString(required=True)
    Length = T.PositiveInteger()
    SignificantDigits = T.NonNegativeInteger()
    SASFieldName = T.SASName()
    SDSVarName = T.SASName()
    Origin = T.String()
    Comment = T.String()
    Description = T.ODMObject(element_class=Description)
    Question = T.ODMObject(element_class=Question)
    ExternalQuestion = T.ODMObject(element_class=ExternalQuestion)
    MeasurementUnitRef = T.ODMListObject(element_class=MeasurementUnitRef)
    RangeCheck = T.ODMListObject(element_class=RangeCheck)
    CodeListRef = T.ODMObject(element_class=CodeListRef)
    Alias = T.ODMListObject(element_class=Alias)
예제 #25
0
class FormDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Repeating = T.ValueSetString(required=True)
    Description = T.ODMObject(element_class=Description)
    ItemGroupRef = T.ODMListObject(element_class=ItemGroupRef)
    ArchiveLayout = T.ODMListObject(element_class=ArchiveLayout)
    Alias = T.ODMListObject(element_class=Alias)

    def __len__(self):
        return len(self.ItemGroupRef)

    def __getitem__(self, position):
        return self.ItemGroupRef[position]

    def __iter__(self):
        return iter(self.ItemGroupRef)
예제 #26
0
파일: model.py 프로젝트: swhume/odmlib
class CodeList(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    DataType = T.ValueSetString(required=True)
    ExtCodeID = T.String(required=True, namespace="nciodm")
    CodeListExtensible = T.ValueSetString(required=True, namespace="nciodm")
    Description = T.ODMObject(element_class=Description)
    EnumeratedItem = T.ODMListObject(element_class=EnumeratedItem)
    CDISCSubmissionValue = T.ODMObject(required=True,
                                       element_class=CDISCSubmissionValue,
                                       namespace="nciodm")
    CDISCSynonym = T.ODMObject(required=True,
                               element_class=CDISCSynonym,
                               namespace="nciodm")
    PreferredTerm = T.ODMObject(required=True,
                                element_class=PreferredTerm,
                                namespace="nciodm")
예제 #27
0
class ODM(OE.ODMElement):
    """ v2.0 """
    Description = T.String(required=False)
    FileType = T.ValueSetString(required=True)
    Granularity = T.ValueSetString(required=False)
    Archival = T.ValueSetString(required=False)
    FileOID = T.OID(required=True)
    CreationDateTime = T.DateTimeString(required=True)
    PriorFileOID = T.OIDRef(required=False)
    AsOfDateTime = T.DateTimeString(required=False)
    ODMVersion = T.ValueSetString(required=False)
    Originator = T.String(required=False)
    SourceSystem = T.String(required=False)
    SourceSystemVersion = T.String(required=False)
    ID = T.ID()
    Study = T.ODMListObject(element_class=Study)
    AdminData = T.ODMListObject(element_class=AdminData)
예제 #28
0
class ODM(OE.ODMElement):
    Description = T.String(required=False)
    FileType = T.ValueSetString(required=True)
    Granularity = T.ValueSetString(required=False)
    Archival = T.ValueSetString(required=False)
    FileOID = T.OID(required=True)
    CreationDateTime = T.DateTimeString(required=True)
    PriorFileOID = T.OIDRef(required=False)
    AsOfDateTime = T.DateTimeString(required=False)
    ODMVersion = T.ValueSetString(required=False)
    Originator = T.String(required=False)
    SourceSystem = T.String(required=False)
    SourceSystemVersion = T.String(required=False)
    schemaLocation = T.String(required=False, namespace="xs")
    ID = T.ID()
    Study = T.ODMListObject(element_class=Study)
    AdminData = T.ODMListObject(element_class=AdminData)
    ReferenceData = T.ODMListObject(element_class=ReferenceData)
    ClinicalData = T.ODMListObject(element_class=ClinicalData)
    Association = T.ODMListObject(element_class=Association)
예제 #29
0
class StudyEventDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Repeating = T.ValueSetString(required=True)
    Type = T.ValueSetString(required=True)
    Category = T.String(required=False)
    Description = T.ODMObject(element_class=Description)
    FormRef = T.ODMListObject(element_class=FormRef)
    Alias = T.ODMListObject(element_class=Alias)

    def __len__(self):
        """ returns the number of FormRefs in an StudyEventDef object as the length """
        return len(self.FormRef)

    def __getitem__(self, position):
        """ creates an iterator from an StudyEventDef object that returns the FormRef in position """
        return self.FormRef[position]

    def __iter__(self):
        return iter(self.FormRef)
예제 #30
0
class ItemGroupDef(OE.ODMElement):
    OID = T.OID(required=True)
    Name = T.Name(required=True)
    Repeating = T.ValueSetString(required=True)
    IsReferenceData = T.ValueSetString(required=False)
    SASDatasetName = T.SASName()
    Domain = T.String()
    Origin = T.String()
    Purpose = T.String()
    Comment = T.String()
    Description = T.ODMObject(element_class=Description)
    ItemRef = T.ODMListObject(element_class=ItemRef)
    Alias = T.ODMListObject(element_class=Alias)

    def __len__(self):
        return len(self.ItemRef)

    def __getitem__(self, position):
        return self.ItemRef[position]

    def __iter__(self):
        return iter(self.ItemRef)